

package com.hazelcast.spi.impl.operationservice;

/**
 * An interface that can be implemented by an operation that can block. For example an IQueue.take().
 */
public interface BlockingOperation {

    WaitNotifyKey getWaitKey();

    boolean shouldWait();

    long getWaitTimeout();

    void onWaitExpire();
}
